//
//  BaseViewController.h
//  CityFire
//
//  Created by Liuyz on 2017/7/30.
//  Copyright © 2017年 刘养柱. All rights reserved.
//

#import <UIKit/UIKit.h>
#import <SVProgressHUD/SVProgressHUD.h>
#import "DEFIN.h"
#import <ReactiveObjC/ReactiveObjC.h>
#import <MJRefresh/MJRefresh.h>

typedef enum{
    URLRequestTypeReload,
    URLRequestTypeInsertMore
}URLRequestType;

typedef void(^RefreshActionBlock)();
typedef void(^LoadMoreActionBlock)();

#define V_MAX_AUTO_REFRESH_INTEVER 600.0
#define V_PAGE_SIZE 10 //:TODO需要修改

@interface BaseViewController : UIViewController
{
    NSDate *lastAutoRefreshDate;// 最后一次自动刷新时间
}

/**
 *  配置用于Header的CollectionView或者TableView
 */
@property UIScrollView *refreshScrollView;

@property (nonatomic, copy) RefreshActionBlock refreshActionBlock;  //刷新
@property (nonatomic, copy) RefreshActionBlock loadMoreActionBlock;//加载更多
@property (nonatomic, assign) NSInteger pageNum; // 当前page页

@property (nonatomic, assign) BOOL isNetError;
@property (nonatomic, assign) BOOL isHasData;
@property (nonatomic, assign) BOOL isHasTasksData;

/**
 *  收到用户信息重读后的ActionBlock
 */
//@property (nonatomic, copy) RefreshActionBlock reloadUserInfoActionBlock;

/**
 *  无数据View
 */
//@property (nonatomic, strong) LLNoDataView *noDataView;
/**
 *  是否没有数据
 *  YES：显示NoDataView
 *  NO：隐藏NoDataView
 */
@property (nonatomic, assign) BOOL isNoData;
/**
 *  NoData提示文本
 */
@property (nonatomic, copy) NSString *noDataText;

/**
 *  是否打开页面显示（didViewAppear）时候的自动刷新调用（startRefresh）
 */
@property BOOL isAutoRefresh;

/**
 * 是否分页
 */
@property (nonatomic, assign) BOOL isPageSep;

/**
 *  停止更新
 */
- (void)endRefresh;

@end
